/**
 * <copyright>
 * </copyright>
 *
 * $Id$
 */
package org.ofbiz.eclipse.model.webapp.SiteConf;

import org.eclipse.emf.ecore.EObject;

/**
 * <!-- begin-user-doc -->
 * A representation of the model object '<em><b>Security Type</b></em>'.
 * <!-- end-user-doc -->
 *
 * <p>
 * The following features are supported:
 * <ul>
 *   <li>{@link org.ofbiz.eclipse.model.webapp.SiteConf.SecurityType#getAuth <em>Auth</em>}</li>
 *   <li>{@link org.ofbiz.eclipse.model.webapp.SiteConf.SecurityType#getCert <em>Cert</em>}</li>
 *   <li>{@link org.ofbiz.eclipse.model.webapp.SiteConf.SecurityType#getDirectRequest <em>Direct Request</em>}</li>
 *   <li>{@link org.ofbiz.eclipse.model.webapp.SiteConf.SecurityType#getExternalView <em>External View</em>}</li>
 *   <li>{@link org.ofbiz.eclipse.model.webapp.SiteConf.SecurityType#getHttps <em>Https</em>}</li>
 * </ul>
 * </p>
 *
 * @see org.ofbiz.eclipse.model.webapp.SiteConf.SiteConfPackage#getSecurityType()
 * @model extendedMetaData="name='security_._type' kind='empty'"
 * @generated
 */
public interface SecurityType extends EObject {
	/**
	 * Returns the value of the '<em><b>Auth</b></em>' attribute.
	 * The default value is <code>"false"</code>.
	 * The literals are from the enumeration {@link org.ofbiz.eclipse.model.webapp.SiteConf.AuthType}.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Auth</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Auth</em>' attribute.
	 * @see org.ofbiz.eclipse.model.webapp.SiteConf.AuthType
	 * @see #isSetAuth()
	 * @see #unsetAuth()
	 * @see #setAuth(AuthType)
	 * @see org.ofbiz.eclipse.model.webapp.SiteConf.SiteConfPackage#getSecurityType_Auth()
	 * @model default="false" unsettable="true"
	 *        extendedMetaData="kind='attribute' name='auth' namespace='##targetNamespace'"
	 * @generated
	 */
	AuthType getAuth();

	/**
	 * Sets the value of the '{@link org.ofbiz.eclipse.model.webapp.SiteConf.SecurityType#getAuth <em>Auth</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Auth</em>' attribute.
	 * @see org.ofbiz.eclipse.model.webapp.SiteConf.AuthType
	 * @see #isSetAuth()
	 * @see #unsetAuth()
	 * @see #getAuth()
	 * @generated
	 */
	void setAuth(AuthType value);

	/**
	 * Unsets the value of the '{@link org.ofbiz.eclipse.model.webapp.SiteConf.SecurityType#getAuth <em>Auth</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #isSetAuth()
	 * @see #getAuth()
	 * @see #setAuth(AuthType)
	 * @generated
	 */
	void unsetAuth();

	/**
	 * Returns whether the value of the '{@link org.ofbiz.eclipse.model.webapp.SiteConf.SecurityType#getAuth <em>Auth</em>}' attribute is set.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return whether the value of the '<em>Auth</em>' attribute is set.
	 * @see #unsetAuth()
	 * @see #getAuth()
	 * @see #setAuth(AuthType)
	 * @generated
	 */
	boolean isSetAuth();

	/**
	 * Returns the value of the '<em><b>Cert</b></em>' attribute.
	 * The default value is <code>"false"</code>.
	 * The literals are from the enumeration {@link org.ofbiz.eclipse.model.webapp.SiteConf.CertType}.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Cert</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Cert</em>' attribute.
	 * @see org.ofbiz.eclipse.model.webapp.SiteConf.CertType
	 * @see #isSetCert()
	 * @see #unsetCert()
	 * @see #setCert(CertType)
	 * @see org.ofbiz.eclipse.model.webapp.SiteConf.SiteConfPackage#getSecurityType_Cert()
	 * @model default="false" unsettable="true"
	 *        extendedMetaData="kind='attribute' name='cert' namespace='##targetNamespace'"
	 * @generated
	 */
	CertType getCert();

	/**
	 * Sets the value of the '{@link org.ofbiz.eclipse.model.webapp.SiteConf.SecurityType#getCert <em>Cert</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Cert</em>' attribute.
	 * @see org.ofbiz.eclipse.model.webapp.SiteConf.CertType
	 * @see #isSetCert()
	 * @see #unsetCert()
	 * @see #getCert()
	 * @generated
	 */
	void setCert(CertType value);

	/**
	 * Unsets the value of the '{@link org.ofbiz.eclipse.model.webapp.SiteConf.SecurityType#getCert <em>Cert</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #isSetCert()
	 * @see #getCert()
	 * @see #setCert(CertType)
	 * @generated
	 */
	void unsetCert();

	/**
	 * Returns whether the value of the '{@link org.ofbiz.eclipse.model.webapp.SiteConf.SecurityType#getCert <em>Cert</em>}' attribute is set.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return whether the value of the '<em>Cert</em>' attribute is set.
	 * @see #unsetCert()
	 * @see #getCert()
	 * @see #setCert(CertType)
	 * @generated
	 */
	boolean isSetCert();

	/**
	 * Returns the value of the '<em><b>Direct Request</b></em>' attribute.
	 * The default value is <code>"true"</code>.
	 * The literals are from the enumeration {@link org.ofbiz.eclipse.model.webapp.SiteConf.DirectRequestType}.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Direct Request</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Direct Request</em>' attribute.
	 * @see org.ofbiz.eclipse.model.webapp.SiteConf.DirectRequestType
	 * @see #isSetDirectRequest()
	 * @see #unsetDirectRequest()
	 * @see #setDirectRequest(DirectRequestType)
	 * @see org.ofbiz.eclipse.model.webapp.SiteConf.SiteConfPackage#getSecurityType_DirectRequest()
	 * @model default="true" unsettable="true"
	 *        extendedMetaData="kind='attribute' name='direct-request' namespace='##targetNamespace'"
	 * @generated
	 */
	DirectRequestType getDirectRequest();

	/**
	 * Sets the value of the '{@link org.ofbiz.eclipse.model.webapp.SiteConf.SecurityType#getDirectRequest <em>Direct Request</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Direct Request</em>' attribute.
	 * @see org.ofbiz.eclipse.model.webapp.SiteConf.DirectRequestType
	 * @see #isSetDirectRequest()
	 * @see #unsetDirectRequest()
	 * @see #getDirectRequest()
	 * @generated
	 */
	void setDirectRequest(DirectRequestType value);

	/**
	 * Unsets the value of the '{@link org.ofbiz.eclipse.model.webapp.SiteConf.SecurityType#getDirectRequest <em>Direct Request</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #isSetDirectRequest()
	 * @see #getDirectRequest()
	 * @see #setDirectRequest(DirectRequestType)
	 * @generated
	 */
	void unsetDirectRequest();

	/**
	 * Returns whether the value of the '{@link org.ofbiz.eclipse.model.webapp.SiteConf.SecurityType#getDirectRequest <em>Direct Request</em>}' attribute is set.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return whether the value of the '<em>Direct Request</em>' attribute is set.
	 * @see #unsetDirectRequest()
	 * @see #getDirectRequest()
	 * @see #setDirectRequest(DirectRequestType)
	 * @generated
	 */
	boolean isSetDirectRequest();

	/**
	 * Returns the value of the '<em><b>External View</b></em>' attribute.
	 * The default value is <code>"true"</code>.
	 * The literals are from the enumeration {@link org.ofbiz.eclipse.model.webapp.SiteConf.ExternalViewType}.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>External View</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>External View</em>' attribute.
	 * @see org.ofbiz.eclipse.model.webapp.SiteConf.ExternalViewType
	 * @see #isSetExternalView()
	 * @see #unsetExternalView()
	 * @see #setExternalView(ExternalViewType)
	 * @see org.ofbiz.eclipse.model.webapp.SiteConf.SiteConfPackage#getSecurityType_ExternalView()
	 * @model default="true" unsettable="true"
	 *        extendedMetaData="kind='attribute' name='external-view' namespace='##targetNamespace'"
	 * @generated
	 */
	ExternalViewType getExternalView();

	/**
	 * Sets the value of the '{@link org.ofbiz.eclipse.model.webapp.SiteConf.SecurityType#getExternalView <em>External View</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>External View</em>' attribute.
	 * @see org.ofbiz.eclipse.model.webapp.SiteConf.ExternalViewType
	 * @see #isSetExternalView()
	 * @see #unsetExternalView()
	 * @see #getExternalView()
	 * @generated
	 */
	void setExternalView(ExternalViewType value);

	/**
	 * Unsets the value of the '{@link org.ofbiz.eclipse.model.webapp.SiteConf.SecurityType#getExternalView <em>External View</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #isSetExternalView()
	 * @see #getExternalView()
	 * @see #setExternalView(ExternalViewType)
	 * @generated
	 */
	void unsetExternalView();

	/**
	 * Returns whether the value of the '{@link org.ofbiz.eclipse.model.webapp.SiteConf.SecurityType#getExternalView <em>External View</em>}' attribute is set.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return whether the value of the '<em>External View</em>' attribute is set.
	 * @see #unsetExternalView()
	 * @see #getExternalView()
	 * @see #setExternalView(ExternalViewType)
	 * @generated
	 */
	boolean isSetExternalView();

	/**
	 * Returns the value of the '<em><b>Https</b></em>' attribute.
	 * The default value is <code>"false"</code>.
	 * The literals are from the enumeration {@link org.ofbiz.eclipse.model.webapp.SiteConf.HttpsType}.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Https</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Https</em>' attribute.
	 * @see org.ofbiz.eclipse.model.webapp.SiteConf.HttpsType
	 * @see #isSetHttps()
	 * @see #unsetHttps()
	 * @see #setHttps(HttpsType)
	 * @see org.ofbiz.eclipse.model.webapp.SiteConf.SiteConfPackage#getSecurityType_Https()
	 * @model default="false" unsettable="true"
	 *        extendedMetaData="kind='attribute' name='https' namespace='##targetNamespace'"
	 * @generated
	 */
	HttpsType getHttps();

	/**
	 * Sets the value of the '{@link org.ofbiz.eclipse.model.webapp.SiteConf.SecurityType#getHttps <em>Https</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Https</em>' attribute.
	 * @see org.ofbiz.eclipse.model.webapp.SiteConf.HttpsType
	 * @see #isSetHttps()
	 * @see #unsetHttps()
	 * @see #getHttps()
	 * @generated
	 */
	void setHttps(HttpsType value);

	/**
	 * Unsets the value of the '{@link org.ofbiz.eclipse.model.webapp.SiteConf.SecurityType#getHttps <em>Https</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #isSetHttps()
	 * @see #getHttps()
	 * @see #setHttps(HttpsType)
	 * @generated
	 */
	void unsetHttps();

	/**
	 * Returns whether the value of the '{@link org.ofbiz.eclipse.model.webapp.SiteConf.SecurityType#getHttps <em>Https</em>}' attribute is set.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return whether the value of the '<em>Https</em>' attribute is set.
	 * @see #unsetHttps()
	 * @see #getHttps()
	 * @see #setHttps(HttpsType)
	 * @generated
	 */
	boolean isSetHttps();

} // SecurityType
